Many computer systems are developed today to aid an operator or user in performing or directing certain tasks with respect to real world objects. These computer systems provide the user with information concerning the present state of such objects. Information concerning the state of a real world object is provided via text that describes the current state of the object. The real world objects may be aircraft, helicopters, ships, tanks, trucks, trains, buses, cars, machines, processes, etc. Typically, these objects are represented in a computer system and displayed on a computer screen. These objects are typically represented on a computer screen, using some type of symbol. Information concerning these objects is conveyed via the position of the object on the screen and possibly text associated with the symbol. Since all information concerning a particular object cannot be displayed on the screen, most systems typically provide the user with the ability to select a particular object and view more detailed information. Such systems require the user to perform additional acts to obtain additional information. For example, by selecting the object with an input device or moving a cursor on top of the object as displayed and selecting enter. Upon selection of an object additional information is presented about the selected object. This information can be placed in a window or menu box. The user may also be required to make another selection to remove the additional information from the screen.
This method requires the user to take additional actions (i.e. the selection and deselection) to obtain information. These actions can be time consuming especially when a number of objects are presented on the display and the user desires detailed information on all objects. This problem is compounded when the displayed objects represent dynamic real world objects because dynamic real world objects are constantly changing. Furthermore, when the additional information is presented on the display other objects can potentially be obscured from the user's view. This presents significant problems for real time systems with many dynamic objects.
Several attempts have been made at increasing the information conveyed to the user by changing the visual appearance of the object on the display to reflect its real world state. In systems that manage numerous real world objects a variety of applications can effect changes in a particular dynamic object's state. For instance, in an Air Traffic Control System a variety of applications (e.g.. Conflict Detection. Handoff) may affect the state of a particular aircraft. Thus, each application that potentially can affect the state of a dynamic object must have a complete understanding of the states a particular object type can be in as well as events that cause a particular object to transition from state-to-state. Because in most complex systems, such as an air traffic control system, the objects can take on a large number of states, maintenance of the states and state transitions can be difficult. Furthermore, because there are such a large number of states the applications also need to track which object states effect which visible characteristics of the objects when displayed on the display screen. The mapping of visual characteristics to an object's state needs to be statically defined such that each application can determine the appropriate appearance for a given object it is effecting. This ad hoc method is not practical when the number of possible states of an object are numerous as it provides a combinational explosion in the number of states. Such solutions are time-exhaustive and difficult to maintain. Also, the ad hoc method will not guarantee full coverage where all possible states are considered for display representation. Such an ad hoc method may work in simple systems where the dynamic objects take on only a small number of states, but becomes unmanageable when the number of states and the number of applications affecting the states increase. The ad hoc methods suffer from the fact that information on the object's state and visual characteristics must be built into each application program. This makes changing state information and the visual representation of states for a given object type costly and time consuming. In order to change the visual appearance of the state for a given object type all applications that may effect the visual characteristic would need to be changed. These maintenance problems are compounded when the number of states increases for a given object type.